/*
 * SSAA.h
 *
 *  Created on: 2012/7/30
 *      Author: soniclin
 */

#ifndef SSAA_H
#define SSAA_H

#include "../sMathLib/Vector3/Vector3.hpp"

namespace ibm
{

template<typename T, typename SamplingPolicy, typename Container>
class SSAA: public SamplingPolicy
{
public:

	SSAA(unsigned nSamples, Container& samples);

	SSAA(unsigned nSamples);

	T operator()(const sMathLib::VectorX<int, 3>& iPos, const Sphere<T, ImmersedObject>& sphere);

	virtual ~SSAA();

private:

	Container* samples_data

};

}

#endif /* SSAA_H */
